#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <assert.h>
#include <stdlib.h>
#include <ctype.h>
//
//void fun(int p)
//{
//	p = NULL;
//	//assert(p);
//	if(p == NULL)
//	{
//		perror("Error: p is NULL");
//	}
//}
//
//int main()
//{
//	int n = 12;
//	fun(n);
//	/*if (n==NULL)
//	{
//		perror(n);
//	}*/
//	return 0;
//}

//#define PRINT(n)  printf("haha "#n" is %d",n)
//
//int  main()
//{
//	int a = 13;
//	PRINT(a);
//	return 0;
//}

//struct foo
//{
//	char name[10];
//	int arr;
//};
//
//#define  T1 struct foo* 
//typedef struct foo* T2;
//
//int main()
//{
//	struct foo s1= { "hehe",12 };
//	struct foo s2= { "nihao",22 };
//	T1 p1 = &s1;
//	T1 p2 = &s2;
//	printf("%s \n%d\n", s1.name, s1.arr);
//	printf("%s \n%d\n", s2.name, s2.arr);
//	return 0;
//}


//int main()
//{
//	int x = 10;
//	int b = (x) * ((x)-1);
//	printf("%d\n", b);
//	return 0;
//}

//#define max(a,b) ((a)>(b)?(a):(b))
//int main()
//{
//	int a = 20;
//	int b = 10;
//	int n = max(a, b);
//	printf("%d", n);
//	return 0;
//}

//#define max(a,b) ((a)>(b)?(a):(b))
//int main()
//{
//	printf("%d", max(12, 32));
//	return 0;
//}

//int main()
//{
//	printf("%d\n", sizeof(int));
//	printf("%d\n", sizeof(long));
//	printf("%d\n", sizeof(long long));
//	return 0;
//}
//
//int main()
//{
//	unsigned char n = -1;
//	printf("%d\n", n);
//	return 0;
//}

//
//int main()
//{
//	char* p = (char*)malloc(sizeof(char));
//	*p = 'a';
//	printf("%c", *p);
//	free(p);
//	return 0;
//}

//int main()
//{
//	char* p;
//	p = NULL;
//	printf("%d", *p);
//	return 0;
//}

//int main()
//{
//	int n = -5;
//	int h;
//	h = n % HASHSIZE;
//	if (h < 0)
//		h += HASHSIZE;
//
//	return 0;
//}

int main()
{
	int c='A';
	while ((c = getchar()) != (char)EOF)
	{
		putchar(tolower(c));
	}
	return 0;
}